<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<link rel="stylesheet" type="text/css" href="../src/css/reset.css">
	<link rel="stylesheet" type="text/css" href="../src/css/font-awesome.min.css">
	<link rel="stylesheet" type="text/css" href="../src/css/form.css">
	<link rel="stylesheet" type="text/css" href="../src/css/codeshow.css">
	<link rel="stylesheet" type="text/css" href="../src/css/index.css">

	<!--<script>
		document.ready = function (callback) {
			///兼容FF,Google
			if (document.addEventListener) {
				document.addEventListener('DOMContentLoaded', function () {
					document.removeEventListener('DOMContentLoaded', arguments.callee, false);
					callback();
				}, false)
			}
			//兼容IE
			else if (document.attachEvent) {
				document.attachEvent('onreadytstatechange', function () {
					if (document.readyState == "complete") {
						document.detachEvent("onreadystatechange", arguments.callee);
						callback();
					}
				})
			}
			else if (document.lastChild == document.body) {
				callback();
			}
		}
		document.ready(function(){
			console.log(2);
		})
	</script>-->

</head>
<body>
<div class="container disappear" style="position: relative;">
	<!-- 第二页刷代码 -->
	<div id="sec" class="hide">
		<pre id="pre" style="display:none;">
Login....
password for root: **********


root@BXS:# grep root etc/crypto
grep: /etc/crypto: Permission Denied
root@BXS:# chmod 755 /etc/crypto
root@BXS:# grep root etc/crypto

pico ablkcipher.c

static const char *skcipher_default_geniv __read_mostly;

struct ablkcipher_buffer {
		struct list_head        entry;
		struct scatter_walk        dst;
		unsigned int                len;
		void                        *data;
};

enum {
		ABLKCIPHER_WALK_SLOW = 1 << 0,
};

static inline void ablkcipher_buffer_write(struct ablkcipher_buffer *p)
{
		scatterwalk_copychunks(p->data, &p->dst, p->len, 1);
}

void __ablkcipher_walk_complete(struct ablkcipher_walk *walk)
{
		struct ablkcipher_buffer *p, *tmp;

		list_for_each_entry_safe(p, tmp, &walk->buffers, entry) {
				ablkcipher_buffer_write(p);
				list_del(&p->entry);
				kfree(p);
		}
}
EXPORT_SYMBOL_GPL(__ablkcipher_walk_complete);

static inline void ablkcipher_queue_write(struct ablkcipher_walk *walk,
										  struct ablkcipher_buffer *p)
{
		p->dst = walk->out;
		list_add_tail(&p->entry, &walk->buffers);
}

/* Get a spot of the specified length that does not straddle a page.
 * The caller needs to ensure that there is enough space for this operation.
 */
static inline u8 *ablkcipher_get_spot(u8 *start, unsigned int len)
{
		u8 *end_page = (u8 *)(((unsigned long)(start + len - 1)) & PAGE_MASK);
		return max(start, end_page);
}                                       struct ablkcipher_buffer *p)
{
		p->dst = walk->out;
		list_add_tail(&p->entry, &walk->buffers);
}

/* Get a spot of the specified length that does not straddle a page.
 * The caller needs to ensure that there is enough space for this operation.
 */
static inline u8 *ablkcipher_get_spot(u8 *start, unsigned int len)
{
		u8 *end_page = (u8 *)(((unsigned long)(start + len - 1)) & PAGE_MASK);
		return max(start, end_page);
}                                       struct ablkcipher_buffer *p)
{
		p->dst = walk->out;
		list_add_tail(&p->entry, &walk->buffers);
}

/* Get a spot of the specified length that does not straddle a page.
 * The caller needs to ensure that there is enough space for this operation.
 */
static inline u8 *ablkcipher_get_spot(u8 *start, unsigned int len)
{
		u8 *end_page = (u8 *)(((unsigned long)(start + len - 1)) & PAGE_MASK);
		return max(start, end_page);
}                                       struct ablkcipher_buffer *p)
{
		p->dst = walk->out;
		list_add_tail(&p->entry, &walk->buffers);
}

/* Get a spot of the specified length that does not straddle a page.
 * The caller needs to ensure that there is enough space for this operation.
 */
static inline u8 *ablkcipher_get_spot(u8 *start, unsigned int len)
{
		u8 *end_page = (u8 *)(((unsigned long)(start + len - 1)) & PAGE_MASK);
		return max(start, end_page);
}                                       struct ablkcipher_buffer *p)
{
		p->dst = walk->out;
		list_add_tail(&p->entry, &walk->buffers);
}

/* Get a spot of the specified length that does not straddle a page.
 * The caller needs to ensure that there is enough space for this operation.
 */
static inline u8 *ablkcipher_get_spot(u8 *start, unsigned int len)
{
		u8 *end_page = (u8 *)(((unsigned long)(start + len - 1)) & PAGE_MASK);
		return max(start, end_page);
}
		</pre>
		<div id="show-wrap">
			<div id="show" style="color:blue;font-weight: bolder;"></div>
		</div>
		<div id="succeed">success</div>
	</div>

	<!-- 第一展示页的表格 -->
	<div id="fir">
		<table id="table" style="color: green;background: black;width: 100%;position: absolute;left:0;top:0;"></table>
		<div class="form">
			<div class="form-title">
				<h2>欢迎进入BXS后台管理系统</h2>
			</div>
			<div class="username">
				<label for="username">username:</label>
				<input type="text" name="username" id="username" value="root">
			</div>
			<div class="password">
				<label for="password">password:</label>
				<input type="password" name="password" id="password" value="admin">
			</div>
			<div class="submit" id="submit-icon">
				<div id="submit">登录</div>
			</div>
		</div>
	</div>

	<div id="th" class="hide">
		<video src="./video/1.mp4" autoplay width="100%" loop="loop" style="position:absolute;top: 0;left: 0;"></video>
		<div id="img"><img src="./images/1.png"></div>
		<div id="link-part">
			<div><a href="#">bXsTeam</a></div>
			<div><a href="#">2</a></div>
			<div><a href="#">3</a></div>s
		</div>
	</div>
</div>
</body>
<script type="text/javascript" src="./js/index.js" async></script>
</html>